import request from '@/utils/request'

// 获取科目列表（分页）
export function getSubjectList(params) {
  return request({
    url: '/subject/list',
    method: 'post',
    data: params
  })
}

// 获取所有科目列表（不分页）
export function getAllSubjects() {
  return request({
    url: '/subject/all',
    method: 'get'
  })
}

// 根据ID获取科目详情
export function getSubjectById(id) {
  return request({
    url: `/subject/${id}`,
    method: 'get'
  })
}

// 根据年级层次获取科目
export function getSubjectsByGrade(gradeLevel) {
  return request({
    url: `/subject/byGrade/${gradeLevel}`,
    method: 'get'
  })
}

// 新增科目
export function addSubject(data) {
  return request({
    url: '/subject/add',
    method: 'post',
    data
  })
}

// 更新科目
export function updateSubject(data) {
  return request({
    url: '/subject/update',
    method: 'post',
    data
  })
}

// 删除科目
export function deleteSubject(id) {
  return request({
    url: `/subject/delete/${id}`,
    method: 'post'
  })
}

// 批量删除科目
export function batchDeleteSubjects(ids) {
  return request({
    url: '/subject/batchDelete',
    method: 'post',
    data: ids
  })
}

// 更新科目状态
export function updateSubjectStatus(id, status) {
  return request({
    url: '/subject/updateStatus',
    method: 'post',
    params: { id, status }
  })
}

// 导出科目数据为Excel
export function exportSubjectData(params) {
  return request({
    url: '/subject/export',
    method: 'get',
    params: params,
    responseType: 'blob'
  })
}
